package com.calligraphy.user.service;

import com.calligraphy.user.model.User;

import javax.servlet.http.Cookie;

/**
 * @Author hy
 * @Date 2018/12/13 16:48
 **/
public interface UserService {

    /** 注册用户. */
    void registerUser(User user);

    /** 修改用户. */
    User updateUser(User alter);

    /** 根据邮箱查找. */
    User findByEmail(String email);

    /** 根据邮箱.密码查找. */
    User findByEmailAndPassWord(String email,String password);

    /** 验证密码. */
    User findByUserIdAndPassword(String userId,String pwd);

    /** 重置密码. */
    int resetPassword(String pwd, String email);

    /** 创建token. */
    String createToken(String email, String name);

    /** 鉴权. */
    User auth(String token);

    /** 鉴权. */
    Cookie auth2(String token);

    /** 用户注销. */
    void invalidate(String token);
}
